#include "Bullet3Collision/NarrowPhaseCollision/shared/b3RigidBodyData.h"
#ifdef __cplusplus
extern "C" {
#endif
b3RigidBodyData* bullet_Newb3RigidBodyData(){
	b3RigidBodyData* wrap_out = new b3RigidBodyData();
	return wrap_out;
}

b3Vector3* bullet_b3RigidBodyData_GetFieldOfM_angVel(b3RigidBodyData* c_this){
	return (b3Vector3*)(&c_this->m_angVel);
}

int bullet_b3RigidBodyData_GetFieldOfM_collidableIdx(b3RigidBodyData* c_this){
	return (int)(c_this->m_collidableIdx);
}

float bullet_b3RigidBodyData_GetFieldOfM_frictionCoeff(b3RigidBodyData* c_this){
	return (float)(c_this->m_frictionCoeff);
}

float bullet_b3RigidBodyData_GetFieldOfM_invMass(b3RigidBodyData* c_this){
	return (float)(c_this->m_invMass);
}

b3Vector3* bullet_b3RigidBodyData_GetFieldOfM_linVel(b3RigidBodyData* c_this){
	return (b3Vector3*)(&c_this->m_linVel);
}

b3Vector3* bullet_b3RigidBodyData_GetFieldOfM_pos(b3RigidBodyData* c_this){
	return (b3Vector3*)(&c_this->m_pos);
}

b3Quaternion* bullet_b3RigidBodyData_GetFieldOfM_quat(b3RigidBodyData* c_this){
	return (b3Quaternion*)(&c_this->m_quat);
}

float bullet_b3RigidBodyData_GetFieldOfM_restituitionCoeff(b3RigidBodyData* c_this){
	return (float)(c_this->m_restituitionCoeff);
}

b3InertiaData* bullet_Newb3InertiaData(){
	b3InertiaData* wrap_out = new b3InertiaData();
	return wrap_out;
}

b3Matrix3x3* bullet_b3InertiaData_GetFieldOfM_initInvInertia(b3InertiaData* c_this){
	return (b3Matrix3x3*)(&c_this->m_initInvInertia);
}

b3Matrix3x3* bullet_b3InertiaData_GetFieldOfM_invInertiaWorld(b3InertiaData* c_this){
	return (b3Matrix3x3*)(&c_this->m_invInertiaWorld);
}

#ifdef __cplusplus
}
#endif
